Prioritized reporting of metering data

ABSTRACT

A utility company may schedule when and how endpoints report resource consumption data based on relative priorities of endpoints or the customers associated therewith. By associating endpoints with one of multiple different quality of service (QoS) levels, and sending each endpoint a reporting schedule based on its respective QoS level, the utility company may configure prioritized reporting of resource consumption data by endpoints of an advanced metering infrastructure (AMI) with automatic meter reading (AMR).

RELATED APPLICATION

This application is a continuation of and claims priority to U.S. patentapplication Ser. No. 13/464,678, filed on May 4, 2012, the disclosure ofwhich is incorporated by reference herein.

BACKGROUND

An electric, water or natural gas utility company may manage hundreds ofthousands or millions of metering devices located at customer sites.Such meters measure utility consumption and may be considered endpointsin a network, which may be configured as an advanced meteringinfrastructure (AMI) for automated meter reading (AMR). In manysituations, utility companies bill their customers monthly, quarterly,or even yearly. In such instances, the utility company may monitor thecustomers' meters to measure their resource consumption relativelyinfrequently. For instance, if a utility company bills their customersmonthly, it may be sufficient for the utility to obtain a few or even asingle meter reading during the billing cycle. However, in someinstances utilities may wish to obtain more frequent or timely meterreadings for at least some of their customers.

To achieve timelier meter readings, the utility may simply instruct anendpoint associated with each meter in the AMI network to broadcast or“bubble up” its resource consumption data more often. However,increasing the frequency with which endpoints broadcast their resourceconsumption data will increase the power needs of the endpoints,resulting in shorter battery life for battery powered endpoints.Additionally, more frequent broadcasts are likely to result in morecollisions between broadcasts, particularly in narrow band networkswhich make use of a single fixed radio frequency or a limited range orband of radio frequencies. Collisions are likely to become even moreprevalent and problematic in congested networks or those networksserving a relatively large number of densely located endpoints. In suchcircumstances, increasing the frequency at which endpoints broadcastresource consumption data simply may not be an option.

BRIEF DESCRIPTION OF THE DRAWINGS

The detailed description is set forth with reference to the accompanyingfigures. In the figures, the left-most digit(s) of a reference numberidentifies the figure in which the reference number first appears. Theuse of the same reference numbers in different figures indicates similaror identical items.

FIG. 1 is a schematic diagram of an example architecture of a wirelessnetwork in which different endpoints are scheduled to report theirresource consumption data to a data collector based on their quality ofservice level and/or relative priority.

FIG. 2 is a schematic diagram showing additional details of an exampledata collector of the architecture of FIG. 1.

FIG. 3 is a schematic diagram showing additional details of an exampleendpoint of the architecture of FIG. 1.

FIG. 4 is a schematic diagram that illustrates example quality ofservice definitions over a period of time, such as a day.

FIG. 5 is a table illustrating an example master scheduling reportshowing a variety of information for each endpoint, including anendpoint priority, quality of service level, primary data collector, aload on the primary data collector, a reporting start time, a reportingfrequency, and a number of reporting attempts.

FIG. 6 is a schematic diagram showing an example of how the endpoints ofFIG. 1 bubble up their resource consumption data in a prioritizedmanner.

FIG. 7 is a signal flow diagram illustrating example methods performedby the endpoints, the data collector, and a central office.

DETAILED DESCRIPTION Overview

As discussed above, utility companies typically monitor their customers'resource consumption on an infrequent periodic basis. However, in someinstances utilities may wish to obtain relatively more frequent ortimely meter readings for at least some of their customers (e.g.,commercial customers, consumers of large quantities of a resource,customers with highly variable resource consumption, etc.). Utilitycompanies currently lack an efficient way of obtaining frequent ortimely meter readings for certain customers without incurring additionalpower drain on battery powered endpoints and without substantiallyincreasing network traffic and hence collisions.

This application describes techniques for scheduling when and howendpoints report resource consumption data based on relative prioritiesof endpoints or the customers associated therewith. Using the techniquesdescribed herein, a utility company is able to collect more frequentand/or timely meter readings from endpoints associated with certaincustomers, without substantially increasing power consumption of metersand/or endpoints and without substantially increasing network traffic.

For example, a utility company may administer a plurality of endpoints.The endpoints may be, or be associated with, a smart utility meter(e.g., electricity meter, water meter, or natural gas meter) and may beconfigured to relay resource consumption information measured by thesmart meters to a central office of the utility company. Such endpointsassociated with a smart utility meter are sometimes referred to asmetering points. The utility company may wish to obtain consumption datafrom some of the endpoints earlier and/or more frequently than fromother endpoints. Accordingly, the utility company may determine apriority of each endpoint relative to the plurality of endpointsadministered by the utility company. The priority of each endpoint maydepend on a variety of factors, such as a billing schedule of a customerassociated with the endpoint, a service level agreement of the customerassociated with the endpoint, and/or a characteristic of the customerassociated with the endpoint (e.g., commercial vs. residential,estimated or historically high resource consumption, estimated orhistorically highly variable resource consumption, etc.).

The utility company may establish multiple different quality of service(QoS) levels associated with the resource-consumption reporting functionof endpoints. The utility company may assign each endpoint to one of themultiple QoS levels based at least in part on the relative priority ofthe respective endpoint and/or its associated customer. Each QoS levelmay have a different reporting schedule defining the times and frequencythat endpoints assigned to the QoS level are to report their resourceconsumption data. High priority endpoints may be scheduled to reporttheir resource consumption data earlier during a day, so that theresource consumption data for those endpoints will be available forbilling and other purposes sooner than other lower priority endpoints.As used herein, “1” designates the highest priority and QoS levels, “2”the next highest, and so on, with higher numbers designating lowerrelative priority and QoS levels. The utility company may thencommunicate to each endpoint when the respective endpoint is to reportits resource consumption data. In some implementations, the utilitycompany may communicate when the respective endpoint is to report itsresource consumption data via a message sent to a data collectorassociated with the respective endpoint. Thereafter, each endpoint willreport its resource consumption data to the central office of theutility via the data collector with which it is associated and accordingto the reporting schedule received by the respective endpoint. In otherexamples, the endpoints may report their resource consumption data viaone or more other intermediary nodes in the network. As used herein, theterm “node” refers to any device on the network which is capable ofcommunicating with other devices of the network, including withoutlimitation, endpoints, data collectors, servers, routers, sensors,control points, relays, etc.

While the examples given herein are described primarily in the contextof a network in which endpoints are arranged in direct communicationwith one or more data collectors, in other examples, aspects of thetechniques described herein may also apply to networks in whichcommunications are transmitted through one or more intermediary nodes orendpoints before being transmitted to a central office. For example, thetechniques described herein may apply to endpoints arranged in awireless, utility mesh network, in which communications are passed orrelayed from a child node upstream through one or more intermediarynodes on their way to a root node of the network for routing to thecentral office. Unless otherwise stated, all communications ortransmissions described herein may be by broadcast, multicast and/orunicast transmissions.

Example Architecture

FIG. 1 is a diagram illustrating an example networked environment orsystem 100 of a utility communication network configured for automatedmeter reading (AMR). The system 100 may include a “root” or datacollector (DC) 102 and a plurality of endpoints (EPs) 104-1 through104-5 (collectively referred to as endpoints 104). The data collector102 and endpoints 104 may both be considered “nodes” of the AMI. Whileonly one data collector 102 and five endpoints 104 are shown in FIG. 1for ease of illustration, in practice systems according to thisdisclosure may include as many nodes as may be present in a utilitycompany's AMI or network.

The data collector 102 may communicate with the endpoints 104 over acommon communication channel 106. The common communication channel 106may utilize a radio frequency (RF) or a wired medium. A wired medium mayinclude dedicated wiring, or may include power line communication (PLC),i.e., a data signal superimposed over an alternating current (AC) powerdistribution line. The data collector 102 may also communicate with acentral office 108 via a wired or wireless network 110, such as theInternet, a cellular network, or the like. The network 110 may itself bemade up of one or more other wired and/or wireless networks.

The central office 108 may include one or more severs or other computingdevices, which may be arranged in a single location or in multipledistributed locations. Each computing device of the central office mayinclude one or more processors 112 and memory 114. The memory 114 mayinclude processor-readable instructions, which when executed by the oneor more processors 112 configure the computing device to performfunctions that may include some or all of the functions describedherein. The memory 114 may include software functionality configured asone or more “modules.” However, the modules are intended to representexample divisions of the software for purposes of discussion, and arenot intended to represent any type of requirement or required method,manner or necessary organization. Accordingly, while various “modules”are discussed, their functionality and/or similar functionality could bearranged differently (e.g., combined into a fewer number of modules,broken into a larger number of modules, etc.).

The memory 114 includes a reporting module 116, which is configured todefine when and how endpoints are to report their resource consumptiondata. The reporting module 116 includes endpoint priority data 118,defining relative priorities of the plurality of endpoints in thenetwork, and QoS levels 120 defining when resource consumption data isneeded for endpoints having certain characteristics. In someembodiments, the reporting module 116 also includes a scheduling module122, which may be used to generate a master reporting schedule for theplurality of endpoints 104 based on the priority data 118 and/or the QoSlevels 120. Servers of the central office 108 also include one or morenetwork connections 124, which allow the central office servers tocommunicate with the data collector 102 and other network devices.

In one example, the data collector 102 may be configured to receiveinformation about the plurality of endpoints 104 from which resourceconsumption data is to be collected. In the example shown in FIG. 1, theinformation received by the data collector 102 comprises a completemaster reporting 126 schedule for the plurality of endpoints, whichspecifies when each endpoint is to report its resource consumption datato the data collector 102. In other examples, the information receivedby the data collector 102 may comprise an indication of a relativepriority of each of the plurality of endpoints 104 and in indication ofmultiple quality of service (QoS) levels. In this latter case, the datacollector 102 may create or determine a master reporting schedule forthe plurality of endpoints based at least in part on the indication ofthe priority of each endpoint and the indication of the multiple QoSlevels. In some implementations, the data collector 102 receives all ofthe information of the plurality of endpoints 104 from the centraloffice 108. However, in other implementations, the data collector 102may receive at least some of the information of the plurality ofendpoints 104 from the endpoints themselves. For example, each endpointmay be programmed with its relative priority when it is installed at acustomer's location. Upon being activated or connected to the network, anewly installed endpoint may transmit its relative priority to the datacollector 102.

The data collector 102 is configured to communicate to each of theplurality of endpoints 104 an endpoint reporting schedule 128 of when,based on the received information, the respective endpoint is to reportits resource consumption data to the data collector. FIG. 1 illustratesthe data collector 102 communicating an example endpoint reportingschedule to endpoint 104-5. The endpoint reporting schedule shown inFIG. 1 includes, among other things, an indication of when (e.g.,starting time) and how frequently endpoint 104-5 is to report itsresource consumption data. However, in other examples, the endpointreporting schedule may include other information. Additional details ofmaster and endpoint reporting schedules are described below withreference to FIG. 5.

Once the endpoints 104 have received their endpoint reporting schedules,they are configured to report their data according to the schedules thusreceived. Accordingly, the data collector 102 will receive resourceconsumption data from endpoint 104-1, which has a higher priority (andhence better QoS level) than the other endpoints 104-2 through 104-5shown in FIG. 1. The data collector 102 may also relay the receivedinformation from the endpoint 104-1 having the higher priority to thecentral office 108 of the utility communication network at a time soonerand/or more frequently than the data collector would transmit receivedinformation from lower priority (lower QoS level) endpoints to thecentral office 108. In this way, the utility company is able to collectmore frequent and/or timely meter readings from high priority endpoints,such as endpoint 104-1, without substantially increasing powerconsumption of the endpoints, and without substantially increasingnetwork traffic and/or packet collisions.

Example Data Collector

FIG. 2 is a diagram showing example detail of a data collector, such asthe data collector 102 in of FIG. 1. The data collector 102 may beconfigured as or disposed at a server, a smart transformer, a relay, arouter, or other computing device capable of collecting or aggregatingcommunications from a plurality of endpoints. The data collector 102 mayinclude a radio 202 and a processing unit 204. The radio 202 may providetwo-way radio frequency (RF) communication between the data collector102 one or more endpoints (e.g., endpoints 104 in FIG. 1) and otherdevices in the utility communication network. The processing unit 204may include one or more processors 206 and memory 208. The memory 208may include processor-readable instructions, which when executed by theone or more processors 206 perform functions that may include some orall of the functions described herein. In a further example, thefunctionality of the processor(s) 206 and processor-executableinstructions defined in the memory 208 may be performed by a hardwaredevice, such as an application specific integrated circuit (ASIC), agate array or other hardware-based logic device.

In the example data collector 102 of FIG. 2, the memory 208 may includesoftware functionality configured as one or more “modules.” However, aswith the memory 114, the modules are intended to represent exampledivisions of the software for purposes of discussion, and are notintended to represent any type of requirement or required method, manneror necessary organization. Accordingly, while various “modules” arediscussed, their functionality and/or similar functionality could bearranged differently (e.g., combined into a fewer number of modules,broken into a larger number of modules, etc.). The memory 208 of thedata collector 102 may include a node reporting module which may beconfigured to perform some or all of the functionality of the reportingmodule 116 of the central office 108 and is therefore designated withthe same reference numeral. For example, in the event that the centraloffice 108 does not send the master reporting schedule 126 and insteadsends only priority information and/or QoS levels, the reporting module116 of the data collector may generate a master reporting schedule basedon the information received from the central office 108 and/or one ormore endpoints 104. The memory 208 of the data collector 102 may alsoinclude one or more reporting schedules 210 corresponding to theendpoints 104 that report their resource consumption data to the datacollector 102. In some instances, such as if the central office 108sends the data collector 102 a completed master reporting schedule, thedata collector 102 may not need to include the reporting modulefunctionality and may instead rely on the master reporting scheduleprovided by the central office 102. In that case, the data collector 102may still include the reporting schedule(s) 210, such as the masterreporting schedule received from the central office 108.

In addition to the radio 202, the data collector 102 may include one ormore other network connections 212, such as power line communications(PLC) connections, Ethernet or other wired network connections, cellularcommunication connections, or the like. As such, the data collector 102also includes any ancillary hardware, modules, and/or interfacesassociated with or needed for the operation of the particular networkconnections.

Example Endpoint

FIG. 3 is a diagram showing example details of an individual endpoint104. The endpoint 104 may be configured for interaction with the exampledata collector of FIG. 2. The endpoint 104 may be configured as ordisposed at a smart utility meter, a sensor, a control point, or othercomputing device capable of collecting or communicating data to acentral office of an AMI or similar utility communication network.

In one example, the endpoint 104 may include a radio 302 and aprocessing unit 304. The radio 302 may provide two-way RF communicationwith the data collector 102 and/or other endpoints. The processing unit304 may include one or more processors 306 and memory 308 and/or otherhardware device(s), such as an application specific integrated circuit(ASIC), a gate array or other hardware-based logic device. In a mannersimilar to that described with reference to the data collector 102 ofFIG. 2, the endpoint 104 of FIG. 3 may include software functionalityconfigured as one or more “modules” within the memory 308. Accordingly,while various “modules” are discussed, their functionality and/orsimilar functionality could be arranged differently.

A metrology module 310 may be configured to receive consumption datathat is obtained from a meter (which may be integral to or associatedwith the endpoint). The metrology module 310 may provide the consumptiondata to the data collector 102 (of FIGS. 1 and 2) by RF transmission viathe radio 302. The consumption data may be formatted and/or packetizedin a manner or protocol expected by the data collector 102 and may bereported according to a reporting schedule 312. As discussed above, thereporting schedule 312 may be communicated to the endpoint 104 from thedata collector 102, and may include, for example, a starting time,transmission protocol, frequency, and/or number of times/attempts thatthe endpoint is to report its resource consumption data.

The memories 114, 208, and 304 are examples of computer-readable mediaand may take the form of volatile memory, such as random access memory(RAM) and/or non-volatile memory, such as read only memory (ROM) orflash RAM. Computer-readable media includes volatile and non-volatile,removable and non-removable media implemented in any method ortechnology for storage of information such as computer-readableinstructions, data structures, program modules, or other data forexecution by one or more processors of a computing device. Examples ofcomputer-readable media include, but are not limited to, phase changememory (PRAM), static random-access memory (SRAM), dynamic random-accessmemory (DRAM), other types of random access memory (RAM), read-onlymemory (ROM), electrically erasable programmable read-only memory(EEPROM), flash memory or other memory technology, compact diskread-only memory (CD-ROM), digital versatile disks (DVD) or otheroptical storage, magnetic cassettes, magnetic tape, magnetic diskstorage or other magnetic storage devices, or any other non-transmissionmedium that can be used to store information for access by a computingdevice. As defined herein, computer-readable media does not includecommunication media, such as modulated data signals and carrier waves.

Example Quality of Service (QoS) Definitions

FIG. 4 illustrates an example quality of service (QoS) definition chart400, which defines the multiple QoS levels used by the utility companyto regulate the reporting of resource consumption data of the endpointsadministered by the utility company. Generally, each reporting period isbroken into multiple different time slots or windows, and the QoS levelsare allocated across one or more of the time slots so that nodesassociated with each QoS level will report their resource consumptiondata by a time at which the utility company needs the resourceconsumption data for billing or other purposes. FIG. 4 is merely one ofmany different ways in which the QoS levels may be defined. By way ofexample and not limitation, the QoS levels may alternatively defined ina tabular format, graphical format, formula and/or equation, oraccording to any other method or technique suitable for machine and/orhuman interpretation.

In the illustrated example, the reporting period is represented by thehorizontal axis. The reporting period may be any period of time. In thegiven example, the reporting period is twenty-four hours, taken frommidnight (0:00:00) to the following midnight (24:00:00). In theillustrated example, the QoS chart 400 illustrates that the reportingperiod has been broken into three time slots T₀-T₁, T₁-T₂, and T₂-T₃.Each time slot is allocated a QoS level and a maximum number ofendpoints allowed for the QoS level. The maximum number of endpointsthat is allowed for each QoS level depends on a variety of factors, suchas, for example, the duration of the time slot associated with the QoSlevel, the number of times each endpoint associated with the QoS levelis scheduled to report its resource consumption data. As shown, thefirst time slot, T₀-T₁, is designated QoS Level 1 and is allowed toinclude up to 100 endpoints, the second time slot, T₁-T₂, is designatedQoS Level 2 and is allowed to include up to 200 endpoints, and the thirdtime slot, T₂-T₃, is designated QoS Level 3 and is allowed to include anunlimited number of endpoints (or at least not limited by the QoSdefinitions). The number of endpoints allowed for each QoS level ischosen so that, during the associated time period, all of the endpointsassociated with the QoS Level should be able to successfully reporttheir resource consumption data to their respective data collector.However, in some embodiments, to ensure that all endpoints associatedwith a QoS level have time to complete their reporting, the QoS levelsmay simply be associated with a start time without having any definedend time. For example, QoS Level 1 may begin at T₀ and continue untilall endpoints associated with QoS Level 1 have concluded theirreporting. Likewise, QoS Level 2 may commence at T₁ and may continueuntil all endpoints associated with QoS Level 2 have concluded theirreporting. QoS Level 3 may commence at T₂ and may continue until allendpoints associated with QoS Level 3 have concluded their reporting.However, in some implementations, there may be a mandatory reporting endtime for each day or other reporting period to allow sufficient time forthe data collector 102 to pass the resource consumption data to thecentral office 108 and to complete any other necessary processing of thecollected data.

As shown in FIG. 4, the time periods need not be of equal length. In oneexample, the first time period may correspond to one hour (e.g.,0:00:01-1:00:00), the second time period may correspond to a subsequenthour (e.g., 1:00:01-2:00:00), and the third time period may correspondto the remainder of the reporting period (e.g., 2:00:01-20:00:00). Thus,during the first hour of the reporting period, all endpoints associatedwith QoS Level 1 should be able to successfully report their resourceconsumption data to their respective data collector. Likewise, duringthe second hour of the reporting period, all endpoints associated withQoS Level 2 should be able to successfully report their resourceconsumption data to their respective data collector. All remainingendpoints in this example are associated with QoS Level 3 and should beable to successfully report their resource consumption data to theirrespective data collector during the third time period.

While three QoS levels are shown in FIG. 4, in other examples, anygreater or lesser number of QoS levels may be used. Furthermore, whilein FIG. 4 the QoS levels are shown to match up one-to-one with thefirst, second, and third time periods, in other examples, one or moreQoS levels may span multiple time periods. For example, in anotherimplementation, QoS Level 3 could be configured to start at T₁,concurrently with QoS Level 2, but QoS Level 3 may continue on to T₃,while QoS Level 2 ends at T₃. In that case, endpoints associated withQoS Level 2 may be configured to report more frequently (e.g., every 15minutes) and for a greater number of attempts (e.g., report 4 times) ascompared to endpoints associated with QoS Level 3 (which might beconfigured to report every 5 hours for 3 attempts, for example).

The QoS level to which a particular endpoint is assigned is based atleast in part on a relative priority of the endpoint. In some examples,the QoS level to which a particular endpoint is assigned mayadditionally depend on a data collector to which the node is assigned, aload (in terms of number of endpoints and/or volume of network traffic)on the data collector to which the endpoint is assigned, and/or a numberof data collectors with which the endpoint is able to communicate. Forexample, despite a high priority, an endpoint may be placed in a lowerQoS if, for example, the only data collector with which the endpoint isable to communicate is highly loaded such that associating the endpointwith the higher QoS would result in overloading the data collector.

Example Reporting Schedules

FIG. 5 illustrates as additional details of the master reportingschedule 126 shown in FIG. 1. The master reporting schedule 126 is madeup of multiple individual endpoint reporting schedules 128, with oneendpoint reporting schedule for each endpoint in the AMI or otherutility communication network, or for each endpoint associated with oneor more data collectors in such a network. In FIG. 5, each row of themaster reporting schedule 126 represents an endpoint reporting schedule128. In the example of FIG. 5, the reporting schedule includes a list of“Endpoints” in the left column. For each endpoint in the list, thereporting schedule also includes a “Priority” of the endpoint, a “QoSLevel” assigned to the endpoint, a “Data Collector” with which theendpoint is associated, a “DC Load” on the data collector with which theendpoint is associated, a “Reporting Start Time” for the endpoint, a“Reporting Frequency” for the endpoint, and a number of “Attempts” thatthe endpoint is to make to report its resource consumption data. Thespecific fields included in the master reporting schedule 126 are merelyillustrative and in other embodiments, reporting schedules may includefields different or similar to those described herein together withother fields or data relevant to scheduling reporting of resourceconsumption data. Moreover, the values shown in the master reportingschedule 126 are merely examples and might be different for everyutility communication network.

The values shown in the master reporting schedule 126 are selfexplanatory and will not be described in detail herein. However, it isworth noting that the first five rows of the master reporting schedule126 in this example are representative of the endpoints 104-1 through104-5 of FIG. 1. As shown in the master reporting schedule 126, endpoint104-1 has a first priority and a first QoS level and is thereforeconfigured to start reporting its resource consumption data at thebeginning of the reporting period (i.e., at T₀ in this example), toreport at a high frequency (i.e., every 10 minutes in this example), andto report a relatively high number of times (five attempts in thisexample). In this way, it is highly likely that endpoint 104-1 willsuccessfully report its resource consumption data to data collector 102prior to the other endpoints 104-2 thorough 104-5. Endpoint 104-3 hasthe second priority and second QoS level and consequently will reportits resource consumption data next according to the schedule listed forthat endpoint (i.e., beginning at T₁ and again every 15 minutes for 4attempts in this example), followed by endpoints 104-2, 104-4, and 104-5(i.e., beginning at about T₂ and again every 5 hours for 3 attempts inthis example).

It is also worth calling attention to the priority and QoS levelassociated with endpoint 128, which highlights an example of a situationin which the QoS level may not necessarily match the priority level. Asshown, endpoint 128 has Priority 1, but is nevertheless downgraded toQoS Level 2 because the data collector with which it is associated(i.e., data collector 2 in this example) is heavily loaded at 96% of itscapacity. Accordingly, endpoint 128 (and potentially other nodesassociated with data collector 2) is not associated with QoS Level 1,since doing so might result in data collector 2 becoming over loaded.This downgrade of QoS level may be temporary, and endpoint 128 may beassociated with QoS Level 1 when the load on data collector 2 is reduced(e.g., by migrating one or more endpoints to communicate with adifferent data collector).

FIG. 6 is a schematic diagram illustrating an example of how endpoints104-1 through 104-5 report their resource consumption data to datacollector 102 according to the example reporting schedule 126. FIG. 6also illustrates how data collector 102 may subsequently relay theresource consumption data from endpoints 104-1 through 104-5 to thecentral office 108. As shown, endpoint 104-1 is first in priority andbegins reporting its data early in the first period of time (i.e., at0:01:01 in this example), and then again four more times at ten minuteintervals, for a total of five attempts. While in this example, theattempts are shown at exactly ten minute intervals, in other examples,the attempts may vary somewhat from the scheduled frequency. Forexample, randomization may be introduced, to prevent packet collisionsthat may result from a regularized schedule. Endpoint 104-3 is Priority2 and begins reporting its data next, early in the second period of time(i.e., at 1:01:01 in this example), and then again three more times atfifteen minute intervals, for a total of four attempts. Finally,endpoints 104-2, 104-4, and 104-5, which are Priority 3, begin reportingtheir data in the third period of time and each reports its data threetimes. The endpoints 104-2, 104-4, and 104-5 report their data atstaggered times to avoid collisions of the data transmissions.

In addition to prioritizing the times at which endpoints report theirdata to the data collector 102, the data collector 102 may relayresource consumption data received from priority endpoints to thecentral office sooner or more frequently than it does for lower priorityendpoints. In the illustrated example, data collector 102 is shown toreport resource consumption data to the central office 108 at times whenthe data collector is likely to have collected resource consumption datafrom all endpoints associated with a particular QoS level. For example,the data collector 102, in this example, reports resource consumptiondata to the central office at 1:00:00 and 2:00:00, which correspond tothe conclusion of the first and second time periods, respectively. Thus,by 1:00:00 all endpoints associated with QoS Level 1 should haveconcluded reporting their resource consumption data, and by 2:00:00 allendpoints associated with QoS Level 2 should have concluded reportingtheir resource consumption data. The data collector 102, in thisexample, reports resource consumption data to the central office againat 8:00:00, by which point all QoS Level 3 nodes should have reportedtheir resource consumption data to the data collector 102 at least once.The data collector 102 may continue to relay consumption data to thecentral office 108 periodically until conclusion of the third period oftime. In other embodiments, the data collector 102 may relay resourceconsumption data to the central office 108 at other scheduled times,upon receipt from the endpoints, upon receipt of all endpointsassociated with a particular QoS level, or the like.

Example Methods of Reporting Resource Consumption Data

FIG. 7 is a signal flow diagram which illustrates an example flow ofoperations 700 that may be performed by various devices of a utilitycommunication network and/or AMI to facilitate prioritized reporting ofresource consumption data. The example flow of operations 700 isdescribed in the context of the example of system 100 and using thecentral office 108, data collector 102, and one of the endpoints 104 ofFIG. 1. However, the flow of operations 700 is not limited to use withthe system and devices of FIG. 1 and may be implemented using othersystems and devices.

The flow of operations 700 begins, at block 702, with a server of acentral office of a utility company, such as central office 108,determining one or more endpoints from which to obtain resourceconsumption data. Typically, the endpoints from which the central officeis to obtain resource consumption data will be all endpointsadministered by the utility company. However, in other examples, theendpoints determined at block 702 may be a subset of the endpointsadministered by the utility company, such as when the subset isassociated with a particular time period, endpoint type (e.g.,commercial or residential) and/or geographic area. At block 704, theserver of the central office determines a relative priority of theendpoints determined at block 702. At block 706, the server of thecentral office establishes multiple quality of service (QoS) levels,such as the QoS levels described with reference to FIG. 4, for example.In practice, establishment of the QoS levels may occur before or afterthe determination of endpoints and their priorities in blocks 702 and704. Then, at block 708, the central office assigns each of theendpoints determined in block 702 to one of the QoS levels establishedin block 706.

At block 710, the central office communicates to each endpoint when,based on the respective quality of service level, the respectiveendpoint is to report its resource consumption data. This informationmay be communicated to the endpoints via a data collector, such as datacollector 102. The information may be communicated to the data collectorin the form of a master reporting schedule, such as the master reportingschedule 126 shown in FIG. 5. Alternatively, the information may becommunicated to the data collector in the form of the priorityinformation from block 704 and the QoS levels established at block 706.

In the example implemented at block 712, individual endpoints, such asendpoints 104, may receive an indication of their relative priorityduring installation. The indication may be transmitted from therespective data collector, or may be set at installation and/ormanufacture. At block 714, the individual endpoints may transmit theirpriority information to the data collector with which they areassociated. This may be in addition to or instead of the priorityinformation provided to the data collector by the central office.

At block 716, the data collector receives information about endpointsfor which resource consumption data is to be collected. As discussed,this information may be received from the central office and/or one ormore individual endpoints. Then, at block 718, the data collector maydetermine a master reporting schedule for the endpoints for which it isresponsible. The data collector may determine the master reportingschedule simply by referring to a master reporting schedule if one wasreceived from the central office. If no master reporting schedule wasreceived from the central office, then the data collector may generate amaster reporting schedule based on the priority information and the QoSlevels. Regardless of how the data collector determines the materreporting schedule, at block 720, the data collector communicates toeach endpoint its particular reporting schedule.

At block 722, the endpoint receives its reporting schedule indicatingwhen it is to report its resource consumption data. At block 724 theendpoint collects resource consumption data, such as from an associatedmetering device via metrology module 310 of the endpoint 104. At block726, the endpoint reports or bubbles up its resource consumption dataaccording to the reporting schedule previously received from the datacollector.

At block 728, the data collector receives the resource consumption datafrom the endpoint. In this example, the endpoint (e.g., endpoint 104-1)has a higher priority than other endpoints reporting to the datacollector. At block 730, the data collector transmits the resourceconsumption data from the endpoint having higher priority to the centraloffice sooner than it would transmit information received fromendpoint(s) having a lower priority to the central office. In otherwords, data received from a high priority endpoint is forward to thecentral office more quickly after its receipt from the endpoint thandata received from lower priority endpoints. Finally, at block 732, thecentral office receives the resource consumption data of the endpointshaving the higher priority and/or QoS level sooner and/or morefrequently than resource consumption data of other lower priorityendpoints.

The flow of operations 700 is illustrated as a collection of blocksand/or arrows representing a sequence of operations that can beimplemented in hardware, software, firmware, or a combination thereof.The order in which the blocks are described is not intended to beconstrued as a limitation, and any number of the described operationscan be combined in any order to implement one or more methods, oralternate methods. Additionally, individual operations may be omittedfrom the flow of operations without departing from the spirit and scopeof the subject matter described herein. In the context of software, theblocks represent computer instructions that, when executed by one ormore processors, perform the recited operations. In the context ofhardware, the blocks may represent one or more circuits (e.g.,application specific integrated circuits—ASICs) configured to executethe recited operations.

CONCLUSION

Although the application describes embodiments having specificstructural features and/or methodological acts, it is to be understoodthat the claims are not necessarily limited to the specific features oracts described. Rather, the specific features and acts are merelyillustrative some embodiments that fall within the scope of the claimsof the application.

1. A system for managing reporting of resource consumption data, thesystem comprising: one or more processors; and memory communicativelycoupled to the one or more processors and storing instructions that,when executed, configure the one or more processors to perform actscomprising: determining a plurality of endpoints from which to obtainresource consumption data; determining a relative priority of eachendpoint of the plurality of endpoints; establishing multiple quality ofservice levels; assigning each endpoint of the plurality of endpoints toone of the multiple quality of service levels based at least in part onthe relative priority of the respective endpoint; and communicating toeach endpoint when, based on the respective quality of service level,the respective endpoint is to report its resource consumption data. 2.The system of claim 1, wherein communicating to each endpoint when therespective endpoint is to report its resource consumption data comprisessending a message to a data collector associated with the respectiveendpoint.
 3. The system of claim 1, wherein each quality of servicelevel of the multiple quality of service levels is associated with oneor more periods of time each day.
 4. The system of claim 1, wherein themultiple quality service levels include at least a first quality ofservice level that is higher than a second quality of service level, andwherein fewer endpoints are assigned to a period of time associated withthe first quality of service level than are assigned to a period of timeassociated with the second quality of service level.
 5. The system ofclaim 1, wherein the relative priority of each endpoint is based in parton a service level agreement between a customer and a company thatoperates the system
 6. The system of claim 1, wherein a reporting periodcomprises multiple different windows of time, each window of time beingassociated with one or more quality of service levels.
 7. The system ofclaim 1, wherein assigning each endpoint of the plurality of endpointsto one of the multiple quality of service levels is further based on anumber of endpoints served by a data collector serving the respectiveendpoint and a load on the data collector serving the respectiveendpoint. 8-20. (canceled)
 21. A method comprising: under control of oneor more processors programmed with executable instructions: determininga plurality of endpoints from which to obtain resource consumption data;determining a relative priority of each endpoint of the plurality ofendpoints; establishing multiple quality of service levels; assigningeach endpoint of the plurality of endpoints to one of the multiplequality of service levels based at least in part on the relativepriority of the respective endpoint; and communicating to each endpointwhen, based on the respective quality of service level, the respectiveendpoint is to report its resource consumption data.
 22. The method ofclaim 21, wherein communicating to each endpoint when the respectiveendpoint is to report its resource consumption data comprises sending amessage to a data collector associated with the respective endpoint. 23.The method of claim 21, wherein each quality of service level of themultiple quality of service levels is associated with one or moreperiods of time each day.
 24. The method of claim 21, wherein themultiple quality service levels include at least a first quality ofservice level that is higher than a second quality of service level, andwherein fewer endpoints are assigned to a period of time associated withthe first quality of service level than are assigned to a period of timeassociated with the second quality of service level.
 25. The method ofclaim 21, wherein the relative priority of each endpoint is based inpart on a service level agreement between a customer and a company thatoperates the system
 26. The method of claim 21, wherein a reportingperiod comprises multiple different windows of time, each window of timebeing associated with one or more quality of service levels.
 27. Themethod of claim 21, wherein assigning each endpoint of the plurality ofendpoints to one of the multiple quality of service levels is furtherbased on a number of endpoints served by a data collector serving therespective endpoint and a load on the data collector serving therespective endpoint.
 28. A node of a communication network, the nodecomprising: a radio; and a processing unit communicatively coupled tothe radio, the processing unit configured to implement acts comprising:receiving a communication via the radio indicating when the node is toreport data; collecting data by the node; and reporting the collecteddata via the radio based at least in part on the received communication,wherein the node comprises a network computing device, and the reportingcomprises passing the data to an upstream node in the communicationnetwork.
 29. The node of claim 28, wherein the received communicationdefines a starting time at which the node is to report its data, and anumber of times the node is to report data per day.
 30. The node ofclaim 28, wherein the reporting comprises sending data to a datacollector of the communication network.
 31. The node of claim 28,further comprising, prior to receiving the communication: receiving anindication of a priority of the node during installation of the node;and sending the indication of the priority of the node to a datacollector.
 32. The node of claim 28, wherein the communication networkcomprises a star network in which the node reports directly to a datacollector.
 33. The node of claim 28, wherein the communication networkcomprises a mesh network in which the node reports data to anintermediate node in the communication network.
 34. A data collector ofa communication network, the data collector comprising: one or moreprocessors; and memory communicatively coupled to the one or moreprocessors storing instructions executable by the one or more processorsto perform operations comprising: receiving information about aplurality of nodes for which data is to be collected; and communicatingto each node of the plurality of nodes a reporting schedule of when,based on the received information, the respective node is to report itsdata to the data collector, wherein the reporting schedule defines afrequency and a starting time at which each node is to report data tothe data collector.
 35. The data collector of claim 34, wherein thereceived information comprises a master reporting schedule for theplurality of nodes, specifying when each node is to report its data tothe data collector.
 36. The data collector of claim 34, wherein: thereceived information comprises an indication of: a priority of eachnode; and multiple quality of service levels; and the operations furthercomprising determining a master reporting schedule for the plurality ofnodes based at least in part on the received information comprising theindication of the priority of each node and the multiple quality ofservice levels.
 37. The data collector of claim 34, wherein thereporting schedule further defines a number of times each node is toreport data to the data collector per day.
 38. The data collector ofclaim 34, wherein the information comprises an indication of priorityand is received from the plurality of nodes.
 39. The data collector ofclaim 34, wherein the information is received from a central office ofthe communication network.
 40. The data collector of claim 34, theoperations further comprising: receiving information from a node of theplurality of nodes having a first priority higher than a second priorityof at least one other node of the plurality of nodes; and transmittingthe received information from the node having the first priority to acentral office of the communication network more promptly than the datacollector would transmit received information from the at least oneother node having the second priority to the central office of thecommunication network.